﻿(function (window) {
    var browser = {
        versions: function () {
            var u = window.navigator.userAgent, app = window.navigator.appVersion;

            return { // 移动终端浏览器版本信息
                trident: u.indexOf('Trident') > -1, //IE内核
                presto: u.indexOf('Presto') > -1, //opera内核
                webKit: u.indexOf('AppleWebKit') > -1, //苹果、谷歌内核
                gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1, //火狐内核
                mobile: !!u.match(/AppleWebKit.*Mobile.*/) || !!u.match(/AppleWebKit/), //是否为移动终端
                ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), //ios终端
                android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1, //android终端或者uc浏览器
                iPhone: u.indexOf('iPhone') > -1 || u.indexOf('Mac') > -1, //是否为iPhone或者QQHD浏览器
                iPad: u.indexOf('iPad') > -1, //是否iPad
                webApp: u.indexOf('Safari') == -1, //是否web应该程序，没有头部与底部
                mz: u.indexOf('MZ') > -1, //魅族note
                qqApp: u.indexOf('Mobile MQQBrowser') > -1 || (u.indexOf('iPhone') > -1 && (u.indexOf('QQ') > -1 && !(u.indexOf('MQQBrowser') > -1))) //qq
            };
        }(),

        // 是否微信打开
        inweixin: function () {
            var ua = window.navigator.userAgent.toLowerCase();
            if (ua.match(/MicroMessenger/i) == 'micromessenger')
                return true;
            return false;
        }(),

        // 是否支付宝打开
        inaplipay: function () {
            var ua = window.navigator.userAgent.toLowerCase();
            if (ua.match(/AlipayClient/i) == 'alipayclient')
                return true;
            return false;
        }(),

        // 是否在PC端打开
        inpc: function () {
            var ua = window.navigator.userAgent.toLowerCase();
            return /macintosh|window|wechatdevtools/.test(ua);
        }(),

        language: (window.navigator.browserLanguage || window.navigator.language).toLowerCase()
    };

    if (browser.versions.ios || browser.versions.iPhone || browser.versions.iPad) {
        browser.terminal = 4;
    } else if (browser.versions.android) {
        browser.terminal = 3;
    }
    else {
        browser.terminal = 5;
    }

    window.browser = browser;
})(window);